package io.renren.modules.pet.service;

import io.renren.common.service.CrudService;
import io.renren.modules.pet.dto.PetCollectDTO;
import io.renren.modules.pet.vo.PetTeamCollectVO;
import io.renren.modules.pet.dto.PetTeamCollectDTO;
import io.renren.modules.pet.entity.PetTeamCollectEntity;

import java.util.List;

/**
 * 宠物团队收藏表
 *
 * @author zwp zwp
 * @since 1.0.0 2025-03-24
 */
public interface PetTeamCollectService extends CrudService<PetTeamCollectEntity, PetTeamCollectVO> {
    
    /**
     * 保存
     * @param petTeamCollectDTO
     */
    void save(PetTeamCollectDTO petTeamCollectDTO);
    
    /**
     * 修改
     * @param petTeamCollectDTO
     */
    void update(PetTeamCollectDTO petTeamCollectDTO);

    /**
     * 根据团队ID查询
     * @param petTeamId
     * @return
     */
    List<PetTeamCollectVO> getByPetTeamId(Long petTeamId);

    /**
     * 取消收藏
     * @param dto
     */
    void cancelCollectTeam(PetTeamCollectDTO dto);

    /**
     * 获取当前用户的团队收藏表
     * @param userId
     * @return
     */
    List<PetTeamCollectVO> getByUserId(Long userId);
}